export default {
	data(){
		return  {
			navbarHeight:0, // 导航栏的高度
		}
	},
	computed: {
		// 获取主体部分的高度
		getHeight() {
			return `${uni.$u.sys().windowHeight -this.navbarHeight}px`
		}
	},
	methods: {
		//返回首页
		home() {
			uni.reLaunch({
				url:'/pages/index/index'
			})
		},
		//返回上一页
		getBack() {
			uni.navigateBack({
				delta: 1
			})
		},
		// 获取节点信息
		async initNavHeight(selector='.top') {
			let top =await this.$uGetRect(selector)
			this.navbarHeight=top.height
		},
		/**
		 * TODO 对项目进行重构 -- 获取节点信息
		 * @description 由于在uni.$u 的实例上无法使用，就只能抽离出之前的应用
		 * @tutorial https://www.uviewui.com/js/getRect.html
		 * @param {Object} selector
		 * @param {Object} all
		 */
		$uGetRect(selector, all) {
		    return new Promise((resolve) => {
		        uni.createSelectorQuery()
		            .in(this)[all ? 'selectAll' : 'select'](selector)
		            .boundingClientRect((rect) => {
		                if (all && Array.isArray(rect) && rect.length) {
		                    resolve(rect)
		                }
		                if (!all && rect) {
		                    resolve(rect)
		                }
		            })
		            .exec()
		    })
		},
	},
}
